#!/bin/bash
# FlowScape 后端启动脚本

# 颜色定义
GREEN='\033[0;32m'
BLUE='\033[0;34m'
RED='\033[0;31m'
NC='\033[0m' # No Color

echo -e "${BLUE}=====================================${NC}"
echo -e "${BLUE}  FlowScape Backend Starting...${NC}"
echo -e "${BLUE}=====================================${NC}"

# 尝试激活用户指定的flow conda环境
echo -e "${GREEN}尝试激活flow conda环境...${NC}"
# 检查conda是否可用
if command -v conda &> /dev/null; then
    # 尝试激活flow环境
    conda activate flow || echo -e "${RED}无法激活flow环境，请确保已创建并激活该环境${NC}"
fi

# 检查Python版本
PYTHON_VERSION=$(python --version 2>&1 | awk '{print $2}')
echo -e "${GREEN}Python version: ${PYTHON_VERSION}${NC}"

# 强制删除依赖标记文件，确保重新安装
echo -e "${GREEN}准备重新安装依赖...${NC}"
rm -f .deps_installed

# 安装依赖 - 使用当前环境的pip
echo -e "${GREEN}安装依赖...${NC}"
pip install -r requirements.txt
touch .deps_installed

# 检查.env文件
if [ ! -f ".env" ]; then
    echo -e "${RED}.env 文件不存在,从 .env.example 复制...${NC}"
    cp .env.example .env
fi

# 启动服务
echo -e "${GREEN}启动 FastAPI 服务...${NC}"
echo -e "${BLUE}访问地址: http://localhost:8002${NC}"
echo -e "${BLUE}API文档: http://localhost:8002/docs${NC}"
echo -e "${BLUE}=====================================${NC}"

python -m uvicorn app.main:app --reload --host 0.0.0.0 --port 8002
